/* USER CODE BEGIN Header */
/**
  ******************************************************************************
  * @file           : main.h
  * @brief          : Header for main.c file.
  *                   This file contains the common defines of the application.
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2024 STMicroelectronics.
  * All rights reserved.</center></h2>
  *
  * This software component is licensed by ST under BSD 3-Clause license,
  * the "License"; You may not use this file except in compliance with the
  * License. You may obtain a copy of the License at:
  *                        opensource.org/licenses/BSD-3-Clause
  *
  ******************************************************************************
  */
/* USER CODE END Header */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H

#ifdef __cplusplus
extern "C" {
#endif

/* Includes ------------------------------------------------------------------*/
#include "stm32f1xx_hal.h"

/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */

/* USER CODE END Includes */

/* Exported types ------------------------------------------------------------*/
/* USER CODE BEGIN ET */

/* USER CODE END ET */

/* Exported constants --------------------------------------------------------*/
/* USER CODE BEGIN EC */

/* USER CODE END EC */

/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */

/* USER CODE END EM */

void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim);

/* Exported functions prototypes ---------------------------------------------*/
void Error_Handler(void);

/* USER CODE BEGIN EFP */

/* USER CODE END EFP */

/* Private defines -----------------------------------------------------------*/
#define SI_11_Pin GPIO_PIN_2
#define SI_11_GPIO_Port GPIOE
#define SI_12_Pin GPIO_PIN_3
#define SI_12_GPIO_Port GPIOE
#define SI_13_Pin GPIO_PIN_4
#define SI_13_GPIO_Port GPIOE
#define SI_14_Pin GPIO_PIN_5
#define SI_14_GPIO_Port GPIOE
#define SI_15_Pin GPIO_PIN_6
#define SI_15_GPIO_Port GPIOE
#define DIG1_Pin GPIO_PIN_13
#define DIG1_GPIO_Port GPIOC
#define DIG2_Pin GPIO_PIN_14
#define DIG2_GPIO_Port GPIOC
#define DIG3_Pin GPIO_PIN_15
#define DIG3_GPIO_Port GPIOC
#define KEY1_Pin GPIO_PIN_3
#define KEY1_GPIO_Port GPIOC
#define KEY2_Pin GPIO_PIN_4
#define KEY2_GPIO_Port GPIOC
#define KEY3_Pin GPIO_PIN_5
#define KEY3_GPIO_Port GPIOC
#define SI_16_Pin GPIO_PIN_7
#define SI_16_GPIO_Port GPIOE
#define DI_1_Pin GPIO_PIN_8
#define DI_1_GPIO_Port GPIOE
#define DI_2_Pin GPIO_PIN_9
#define DI_2_GPIO_Port GPIOE
#define DI_3_Pin GPIO_PIN_10
#define DI_3_GPIO_Port GPIOE
#define DI_4_Pin GPIO_PIN_11
#define DI_4_GPIO_Port GPIOE
#define DI_5_Pin GPIO_PIN_12
#define DI_5_GPIO_Port GPIOE
#define DO_1_Pin GPIO_PIN_8
#define DO_1_GPIO_Port GPIOD
#define DO_2_Pin GPIO_PIN_9
#define DO_2_GPIO_Port GPIOD
#define DO_3_Pin GPIO_PIN_10
#define DO_3_GPIO_Port GPIOD
#define DO_4_Pin GPIO_PIN_11
#define DO_4_GPIO_Port GPIOD
#define DO_5_Pin GPIO_PIN_12
#define DO_5_GPIO_Port GPIOD
#define DO_6_Pin GPIO_PIN_13
#define DO_6_GPIO_Port GPIOD
#define WORD_LED_Pin GPIO_PIN_14
#define WORD_LED_GPIO_Port GPIOD
#define DCFAN_SPEED2_Pin GPIO_PIN_9
#define DCFAN_SPEED2_GPIO_Port GPIOC
#define DCFAN_SPEED1_Pin GPIO_PIN_8
#define DCFAN_SPEED1_GPIO_Port GPIOC
#define uart3_EN_Pin GPIO_PIN_8
#define uart3_EN_GPIO_Port GPIOA
#define CS_HC595_Pin GPIO_PIN_15
#define CS_HC595_GPIO_Port GPIOA
#define SHV_G1_A__Pin GPIO_PIN_0
#define SHV_G1_A__GPIO_Port GPIOD
#define SHV_G1_B__Pin GPIO_PIN_1
#define SHV_G1_B__GPIO_Port GPIOD
#define SHV_G1_A_D2_Pin GPIO_PIN_2
#define SHV_G1_A_D2_GPIO_Port GPIOD
#define SHV_G1_B_D3_Pin GPIO_PIN_3
#define SHV_G1_B_D3_GPIO_Port GPIOD
#define uart1_EN_Pin GPIO_PIN_4
#define uart1_EN_GPIO_Port GPIOD
#define PWR_4G_Pin GPIO_PIN_7
#define PWR_4G_GPIO_Port GPIOD
#define DAC_1_Pin GPIO_PIN_6
#define DAC_1_GPIO_Port GPIOB
#define SD_CS_Pin GPIO_PIN_7
#define SD_CS_GPIO_Port GPIOB
#define I2C1_SCL_Pin GPIO_PIN_8
#define I2C1_SCL_GPIO_Port GPIOB
#define I2C1_SDA_Pin GPIO_PIN_9
#define I2C1_SDA_GPIO_Port GPIOB
#define SI_9_Pin GPIO_PIN_0
#define SI_9_GPIO_Port GPIOE
#define SI_10_Pin GPIO_PIN_1
#define SI_10_GPIO_Port GPIOE
/* USER CODE BEGIN Private defines */
typedef int32_t  s32;
typedef int16_t s16;
typedef int8_t  s8;
typedef float f32;
typedef const int32_t sc32;  
typedef const int16_t sc16;  
typedef const int8_t sc8;  

typedef __IO int32_t  vs32;
typedef __IO int16_t  vs16;
typedef __IO int8_t   vs8;

typedef __I int32_t vsc32;  
typedef __I int16_t vsc16; 
typedef __I int8_t vsc8;   

typedef uint32_t  u32;
typedef uint16_t u16;
typedef uint8_t  u8;

typedef const uint32_t uc32;  
typedef const uint16_t uc16;  
typedef const uint8_t uc8; 

typedef __IO uint32_t  vu32;
typedef __IO uint16_t vu16;
typedef __IO uint8_t  vu8;

typedef __I uint32_t vuc32;  
typedef __I uint16_t vuc16; 
typedef __I uint8_t vuc8;  

#define	DEF_BIT(x)	(1<<x)



extern void IWDG_Feed(void);
/* USER CODE END Private defines */

#ifdef __cplusplus
}
#endif

#endif /* __MAIN_H */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
